<html>
<head><meta charset="utf-8"><title>ease of adding new targets to bootstrap · t-compiler · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/index.html">t-compiler</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html">ease of adding new targets to bootstrap</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="228800320"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228800320" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Esteban Küber <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228800320">(Mar 04 2021 at 16:11)</a>:</h4>
<p>There are two independent things at play, I think: the ease of use problem of our bootstrapping process and what approach to use for musl</p>



<a name="228800433"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228800433" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Esteban Küber <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228800433">(Mar 04 2021 at 16:11)</a>:</h4>
<p>The thing to keep in mind is that porters are for the most part not familiar with rust the language, let alone the tooling.</p>



<a name="228800672"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228800672" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228800672">(Mar 04 2021 at 16:12)</a>:</h4>
<p><span class="user-mention silent" data-user-id="119031">Esteban Küber</span> <a href="#narrow/stream/238009-t-compiler.2Fmeetings/topic/.5Bweekly.20meeting.5D.202021-03-04.20.2354818/near/228800320">said</a>:</p>
<blockquote>
<p>There are two independent things at play, I think: the ease of use problem of our bootstrapping process and what approach to use for musl</p>
</blockquote>
<p>if someone with cross-compiling experience could help me write up documentation, that would be <em>super</em> helpful</p>



<a name="228800715"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228800715" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228800715">(Mar 04 2021 at 16:12)</a>:</h4>
<p>I've never tried to cross-compile so I don't know if I could write it myself</p>



<a name="228800860"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228800860" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228800860">(Mar 04 2021 at 16:13)</a>:</h4>
<p>right now the steps are basically</p>
<ul>
<li>flounder around with x.py</li>
<li>realize you have no idea what you're doing</li>
<li>look at previous PRs adding more targets</li>
<li>copy paste those PRs and see if it works</li>
<li>ask on zulip for help</li>
</ul>



<a name="228801009"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228801009" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228801009">(Mar 04 2021 at 16:14)</a>:</h4>
<p>and usually the zulip threads don't get much attention :/ the musl thread is the exception the last couple days, but the same porter asked in early october and got no response at all</p>



<a name="228801026"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228801026" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Esteban Küber <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228801026">(Mar 04 2021 at 16:14)</a>:</h4>
<p>Maybe try to document those last 3 things? <span aria-label="sweat smile" class="emoji emoji-1f605" role="img" title="sweat smile">:sweat_smile:</span></p>



<a name="228801049"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228801049" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228801049">(Mar 04 2021 at 16:14)</a>:</h4>
<p>a slight revision to your third bullet yields the general rustc development process!</p>



<a name="228801282"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228801282" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228801282">(Mar 04 2021 at 16:15)</a>:</h4>
<p><span class="user-mention silent" data-user-id="119031">Esteban Küber</span> <a href="#narrow/stream/238009-t-compiler.2Fmeetings/topic/.5Bweekly.20meeting.5D.202021-03-04.20.2354818/near/228801026">said</a>:</p>
<blockquote>
<p>Maybe try to document those last 3 things? <span aria-label="sweat smile" class="emoji emoji-1f605" role="img" title="sweat smile">:sweat_smile:</span></p>
</blockquote>
<p>well that's the thing, doing the last three points doesn't seem to be much help in practice <span aria-label="sweat smile" class="emoji emoji-1f605" role="img" title="sweat smile">:sweat_smile:</span></p>



<a name="228801296"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228801296" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228801296">(Mar 04 2021 at 16:15)</a>:</h4>
<p>it took <span class="user-mention" data-user-id="332271">@Grommish</span> I think maybe 3 months to get things working</p>



<a name="228801419"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228801419" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228801419">(Mar 04 2021 at 16:16)</a>:</h4>
<p>which seems way excessive for just adding a new target that AFAIK wasn't particularly buggy in codegen or LLVM</p>



<a name="228801472"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228801472" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228801472">(Mar 04 2021 at 16:16)</a>:</h4>
<p>OTOH I (presume) that most of the trouble is target-specific, as the general pattern <em>feels</em> pretty straightforward at first glance. But I haven't tried it either, myself.</p>



<a name="228801677"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228801677" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228801677">(Mar 04 2021 at 16:17)</a>:</h4>
<blockquote>
<p>as the general pattern feels pretty straightforward at first glance</p>
</blockquote>
<p>I think the main issue is the x.py commands to use are not documented, and hard to find by experimenting</p>



<a name="228801725"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228801725" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228801725">(Mar 04 2021 at 16:17)</a>:</h4>
<p>if we could write those down it might be helpful</p>



<a name="228801932"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228801932" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228801932">(Mar 04 2021 at 16:17)</a>:</h4>
<p>(and also <span class="user-mention silent" data-user-id="116122">simulacrum</span> you probably know the steps better than anyone since you maintain bootstrap - people coming in for the first time have no idea what they are)</p>



<a name="228802108"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228802108" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228802108">(Mar 04 2021 at 16:18)</a>:</h4>
<p>x.py install --host=$TARGET --target=$TARGET would be the first thing I try :)</p>



<a name="228802110"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228802110" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228802110">(Mar 04 2021 at 16:18)</a>:</h4>
<p>Should we make a dedicated zulip thread for <span class="user-mention" data-user-id="232545">@Joshua Nelson</span> ’s concerns about these kinds of changes to bootstrap?</p>



<a name="228802175"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228802175" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228802175">(Mar 04 2021 at 16:18)</a>:</h4>
<p>yeah that seems reasonable</p>



<a name="228802624"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228802624" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228802624">(Mar 04 2021 at 16:20)</a>:</h4>
<p>yeah I think my bootstrapping concerns are separate from the policy decision on <a href="https://github.com/rust-lang/rust/issues/82556">https://github.com/rust-lang/rust/issues/82556</a>, personally I don't have much stake in whether musl is static or dynamic by default</p>



<a name="228802809"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228802809" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ariadne Conill <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228802809">(Mar 04 2021 at 16:21)</a>:</h4>
<p>it would be idea to have it match the rest of the musl ecosystem and then the embedded musl in libstd setup could be <code>-embmusl</code></p>



<a name="228803000"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228803000" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228803000">(Mar 04 2021 at 16:22)</a>:</h4>
<p><span class="user-mention silent" data-user-id="360752">Ariadne Conill</span> <a href="#narrow/stream/238009-t-compiler.2Fmeetings/topic/.5Bweekly.20meeting.5D.202021-03-04.20.2354818/near/228802809">said</a>:</p>
<blockquote>
<p>it would be idea to have it match the rest of the musl ecosystem and then the embedded musl in libstd setup could be <code>-embmusl</code></p>
</blockquote>
<p>please take that to a different thread (e.g. <a href="#narrow/stream/131828-t-compiler/topic/bootstrapping.20on.20s390x.2Fmips.20for.20musl">https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/bootstrapping.20on.20s390x.2Fmips.20for.20musl</a> or <a href="#narrow/stream/238009-t-compiler.2Fmeetings/topic/.5Bweekly.20meeting.5D.202021-03-04.20.2354818">https://rust-lang.zulipchat.com/#narrow/stream/238009-t-compiler.2Fmeetings/topic/.5Bweekly.20meeting.5D.202021-03-04.20.2354818</a>)</p>



<a name="228803667"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228803667" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228803667">(Mar 04 2021 at 16:25)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116083">pnkfelix</span> <a href="#narrow/stream/238009-t-compiler.2Fmeetings/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap/near/228802110">said</a>:</p>
<blockquote>
<p>Should we make a dedicated zulip thread for <span class="user-mention silent" data-user-id="232545">Joshua Nelson</span> ’s concerns about these kinds of changes to bootstrap?</p>
</blockquote>
<p>done, could someone move it to <a class="stream" data-stream-id="131828" href="/#narrow/stream/131828-t-compiler">#t-compiler</a> ?</p>



<a name="228803800"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228803800" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Notification Bot <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228803800">(Mar 04 2021 at 16:26)</a>:</h4>
<p>This topic was moved here from <a class="stream-topic" data-stream-id="238009" href="/#narrow/stream/238009-t-compiler.2Fmeetings/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap">#t-compiler/meetings &gt; ease of adding new targets to bootstrap</a> by <span class="user-mention silent" data-user-id="116122">simulacrum</span></p>



<a name="228804160"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228804160" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228804160">(Mar 04 2021 at 16:28)</a>:</h4>
<p><span class="user-mention" data-user-id="332271">@Grommish</span> <span class="user-mention" data-user-id="116155">@Jake Goulding</span> <span class="user-mention" data-user-id="360752">@Ariadne Conill</span> would one of you be interested in helping me write documentation for adding a new target?</p>



<a name="228804169"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228804169" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228804169">(Mar 04 2021 at 16:28)</a>:</h4>
<p>Adding a new target to x.py is not a huge effort AFAIK (and AFAIR "just works" once target is in rustc). Adding one to bootstrap is, but maybe its just my view of it as I don't get docker, nor what constraints our bootstrap needs to deal with.</p>



<a name="228804252"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228804252" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228804252">(Mar 04 2021 at 16:29)</a>:</h4>
<blockquote>
<p>Adding a new target to x.py is not a huge effort AFAIK</p>
</blockquote>
<p><span aria-label="shrug" class="emoji emoji-1f937" role="img" title="shrug">:shrug:</span> people seem to be struggling a lot with it</p>



<a name="228804422"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228804422" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228804422">(Mar 04 2021 at 16:30)</a>:</h4>
<p>I guess for me it would be helpful to either have a concrete set of attempted steps or a goal that I might be able to execute on myself to judge</p>



<a name="228804555"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228804555" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ariadne Conill <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228804555">(Mar 04 2021 at 16:30)</a>:</h4>
<p>i did not struggle with adding targets but did struggle with bootstrapping them</p>



<a name="228804806"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228804806" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ariadne Conill <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228804806">(Mar 04 2021 at 16:31)</a>:</h4>
<p>anyway i am willing to contribute to documentation about the bootstrap process</p>



<a name="228804922"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228804922" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ariadne Conill <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228804922">(Mar 04 2021 at 16:32)</a>:</h4>
<p>also sorry for the previous confusion, zulip threading is something i am still getting my mind around <span aria-label="upside down" class="emoji emoji-1f643" role="img" title="upside down">:upside_down:</span></p>



<a name="228804998"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228804998" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228804998">(Mar 04 2021 at 16:32)</a>:</h4>
<p><span class="user-mention silent" data-user-id="360752">Ariadne Conill</span> <a href="#narrow/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap/near/228804922">said</a>:</p>
<blockquote>
<p>also sorry for the previous confusion, zulip threading is something i am still getting my mind around <span aria-label="upside down" class="emoji emoji-1f643" role="img" title="upside down">:upside_down:</span></p>
</blockquote>
<p>haha it's ok, I just didn't want this to get sidetracked by a debate around static musl</p>



<a name="228805032"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228805032" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228805032">(Mar 04 2021 at 16:32)</a>:</h4>
<p>documentation would go in <a href="https://rustc-dev-guide.rust-lang.org/">https://rustc-dev-guide.rust-lang.org/</a> somewhere</p>



<a name="228805131"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228805131" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228805131">(Mar 04 2021 at 16:33)</a>:</h4>
<p>maybe under "contributing to rust" in its own chapter? <span class="user-mention" data-user-id="116266">@Santiago Pastorino</span> do you have opinions?</p>



<a name="228806120"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228806120" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228806120">(Mar 04 2021 at 16:38)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116122">simulacrum</span> <a href="#narrow/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap/near/228804422">said</a>:</p>
<blockquote>
<p>I guess for me it would be helpful to either have a concrete set of attempted steps or a goal that I might be able to execute on myself to judge</p>
</blockquote>
<p>I think "build a compiler that can run natively on the new target" is the usual goal</p>



<a name="228806203"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228806203" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228806203">(Mar 04 2021 at 16:39)</a>:</h4>
<p>it doesn't necessarily need to be able to bootstrap itself from what I can tell</p>



<a name="228806786"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228806786" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228806786">(Mar 04 2021 at 16:42)</a>:</h4>
<p>that's too vague</p>



<a name="228806850"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228806850" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228806850">(Mar 04 2021 at 16:43)</a>:</h4>
<p>like, tbh, something like "I want X target and here's how to get native host for it to test it, I'm going from Y target"</p>



<a name="228807085"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228807085" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228807085">(Mar 04 2021 at 16:44)</a>:</h4>
<p>well I think this would be useful to document for <em>any</em> combination of X and Y, like unix and windows or something.</p>



<a name="228807248"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228807248" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228807248">(Mar 04 2021 at 16:45)</a>:</h4>
<p>I'm not saying it's not useful</p>



<a name="228807416"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228807416" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228807416">(Mar 04 2021 at 16:46)</a>:</h4>
<p>I'm saying that in order to review that documentation, and presuming that it's not as simple as one line (judging by the effort others have spent), then having some understanding of the complexity is good -- and to do so, having to go through it myself feels like a good way to get that experience</p>



<a name="228807470"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228807470" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228807470">(Mar 04 2021 at 16:46)</a>:</h4>
<p>hmm ok I see</p>



<a name="228807494"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228807494" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228807494">(Mar 04 2021 at 16:46)</a>:</h4>
<p><span class="user-mention" data-user-id="360752">@Ariadne Conill</span> are there any targets you still want to bootstrap that you haven't gotten working yet?</p>



<a name="228807534"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228807534" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228807534">(Mar 04 2021 at 16:46)</a>:</h4>
<p>it's <em>totally fine</em> -- even better -- if that's a target that we <em>know</em> works</p>



<a name="228807615"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228807615" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ariadne Conill <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228807615">(Mar 04 2021 at 16:47)</a>:</h4>
<p>all of the new ones :p</p>



<a name="228807638"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228807638" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ariadne Conill <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228807638">(Mar 04 2021 at 16:47)</a>:</h4>
<p>all of the known good targets work</p>



<a name="228809318"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228809318" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ariadne Conill <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228809318">(Mar 04 2021 at 16:56)</a>:</h4>
<p>the issue is that the new ones require enablement in libc crate</p>



<a name="228809333"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228809333" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Ariadne Conill <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228809333">(Mar 04 2021 at 16:56)</a>:</h4>
<p>so that is the current focus</p>



<a name="228833230"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228833230" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228833230">(Mar 04 2021 at 19:17)</a>:</h4>
<p><span class="user-mention silent" data-user-id="232545">Joshua Nelson</span> <a href="#narrow/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap/near/228805131">said</a>:</p>
<blockquote>
<p>maybe under "contributing to rust" in its own chapter? <span class="user-mention silent" data-user-id="116266">Santiago Pastorino</span> do you have opinions?</p>
</blockquote>
<p>sorry, just saw this</p>



<a name="228833271"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228833271" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228833271">(Mar 04 2021 at 19:17)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> documentation about what are you talking about?</p>



<a name="228833391"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228833391" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228833391">(Mar 04 2021 at 19:18)</a>:</h4>
<p><span class="user-mention silent" data-user-id="116266">Santiago Pastorino</span> <a href="#narrow/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap/near/228833271">said</a>:</p>
<blockquote>
<p><span class="user-mention silent" data-user-id="232545">Joshua Nelson</span> documentation about what are you talking about?</p>
</blockquote>
<p>how to bootstrap a new target so it has a compiler that can run natively</p>



<a name="228833487"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228833487" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228833487">(Mar 04 2021 at 19:19)</a>:</h4>
<p>why not in the bootstrapping section?</p>



<a name="228833530"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228833530" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228833530">(Mar 04 2021 at 19:19)</a>:</h4>
<p>like a separate subsection inside there</p>



<a name="228833623"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228833623" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228833623">(Mar 04 2021 at 19:20)</a>:</h4>
<p>bootstrapping is already really long <span aria-label="sweat smile" class="emoji emoji-1f605" role="img" title="sweat smile">:sweat_smile:</span></p>



<a name="228833712"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228833712" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228833712">(Mar 04 2021 at 19:20)</a>:</h4>
<p>and this is specific to people trying to cross-compile, which is both fairly uncommon and a specific thing to look for in the docs</p>



<a name="228833725"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/ease%20of%20adding%20new%20targets%20to%20bootstrap/near/228833725" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/ease.20of.20adding.20new.20targets.20to.20bootstrap.html#228833725">(Mar 04 2021 at 19:20)</a>:</h4>
<p>so I think a separate chapter makes it easier to find</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>